//axios 二次封装

import axios from 'axios'

//做了统一的地址配置
// 请求拦截器统一 处理了 token 设置了 请求头的token

let http = axios.create({
  //不同的项目基地址不一样
  baseURL: 'http://localhost:1337',
  headers: {},
  //   超时时间，如果后端一段时间没有返回数据，前端就任务请求出错，超时了
  // 单位 毫秒
  timeout: 60000,
})

// 添加请求拦截器
http.interceptors.request.use(
  function (config) {
    // 请求之前
    let token = localStorage.getItem('token')
    if (token) {
      //不同的像项目请求头 token 可能不一样
      config['headers']['token'] = token
    }
    return config
  },
  function (error) {
    // 请求错误
    return Promise.reject(error)
  },
)

//默认导出
export default http
